package com.bluemson.dao;

import com.bluemson.entity.Article;
import com.bluemson.entity.Comment;
import com.bluemson.entity.Plate;
import com.bluemson.entity.User;

import java.util.List;

public interface GetDao {
    /**
     * 所有板块
     * @return
     */
    List<Plate> getPlate();

    /**
     * 所有帖子
     * @return
     */
    List<Article> getArticle();

    /**
     * 该板块所有版主
     * @param name
     * @return
     */
    List<String> getHosts(String name);

    /**
     * 板块id
     * @param name
     * @return
     */
    int getPlateId(String name);

    /**
     * 该板块所有帖子
     * @param plate
     * @return
     */
    List<Article> getPlateArticle(String plate);

    /**
     * 所有用户
     * @return
     */
    List<User> getAllUser();

    /**
     * 某帖子评论
     * @param id
     * @return
     */
    List<Comment> getComment(int id);

    /**
     * 通过id查询某帖子
     * @param id
     * @return
     */
    Article getIdArticle(int id);

    /**
     * 获得某用户身份
     * @param username
     * @return
     */
    int getIdentity(String username);

    /**
     * 获得热门帖子
     * @return
     */
    List<Article> getHotArticle();

    /**
     * 获得某板块热门帖子
     * @param plate
     * @return
     */
    List<Article> getPlateHot(String plate);

    /**
     * 用户关注的帖子
     * @param username
     * @return
     */
    List<String> getConcernedPlate(String username);

    /**
     * 用户头像
     * @param username
     * @return
     */
    String getHead(String username);
    int getId(String username);

    /**
     * 某用户管理的板块
     * @param username
     * @return
     */
    List<Plate> getHostPlate(String username);

    /**
     * 用户写的帖子
     * @param username
     * @return
     */
    List<Article> getUserArticle(String username);

    /**
     * 某评论回复
     * @param id
     * @return
     */
    List<Comment> getReply(int id);

    /**
     * 用户信息
     * @param id
     * @return
     */
    User getInformation(int id);

    /**
     * 某板块建立时间
     * @param name
     * @return
     */
    String getTime(String name);
}
